package com.ourteam.product.ui.dao;

import java.util.Arrays;
import java.util.List;
import java.util.Map;
import net.dao.BaseQueryBean;
import net.dao.BaseWhereCriterion;
import net.dao.IDataAccessInterface;
import org.apache.commons.lang.StringUtils;

/**
 * Template Name : DAO查询对象 Template Version : 1 Template Last Modfiy Date : Sat Aug 19 10:06:32 CST
 * 2017 Auto Generate Date : 2018-12-14 15:15:13 Warning ! This file will be overwrite when
 * regenerate !
 */
public class ProductUITableColumnDAOQueryBean extends BaseQueryBean {

  public ProductUITableColumnDAOQueryBean() {
    super();
  }

  public ProductUITableColumnDAOQueryBean(BaseQueryBean aQueryBean) {
    super(aQueryBean);
  }

  public ProductUITableColumnDAOQueryBean(BaseQueryBean aQueryBean, Map tableReplaceMap) {
    super(aQueryBean, tableReplaceMap);
  }

  public Criteria createCriteria() {

    Criteria criteria = createCriteriaInternal();
    if (oredCriteria.size() == 0) {
      oredCriteria.add(criteria);
    }
    return criteria;
  }

  protected Criteria createCriteriaInternal() {
    return new Criteria(this);
  }

  public void addIdSelectProperty() {
    addIdSelectProperty("id");
  }

  public void addIdSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Id, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Id, "id");
    }
  }

  public void addTableIdSelectProperty() {
    addTableIdSelectProperty("tableId");
  }

  public void addTableIdSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.TableId, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.TableId, "tableId");
    }
  }

  public void addCodeSelectProperty() {
    addCodeSelectProperty("code");
  }

  public void addCodeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Code, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Code, "code");
    }
  }

  public void addTitleSelectProperty() {
    addTitleSelectProperty("title");
  }

  public void addTitleSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Title, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Title, "title");
    }
  }

  public void addTitleKeySelectProperty() {
    addTitleKeySelectProperty("titleKey");
  }

  public void addTitleKeySelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.TitleKey, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.TitleKey, "titleKey");
    }
  }

  public void addTitleIconSelectProperty() {
    addTitleIconSelectProperty("titleIcon");
  }

  public void addTitleIconSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.TitleIcon, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.TitleIcon, "titleIcon");
    }
  }

  public void addWidthSelectProperty() {
    addWidthSelectProperty("width");
  }

  public void addWidthSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Width, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Width, "width");
    }
  }

  public void addAlignSelectProperty() {
    addAlignSelectProperty("align");
  }

  public void addAlignSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Align, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Align, "align");
    }
  }

  public void addFormatValueSelectProperty() {
    addFormatValueSelectProperty("formatValue");
  }

  public void addFormatValueSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.FormatValue, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.FormatValue, "formatValue");
    }
  }

  public void addListDataSourceSelectProperty() {
    addListDataSourceSelectProperty("listDataSource");
  }

  public void addListDataSourceSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ListDataSource, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ListDataSource, "listDataSource");
    }
  }

  public void addCellEditorSelectProperty() {
    addCellEditorSelectProperty("cellEditor");
  }

  public void addCellEditorSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.CellEditor, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.CellEditor, "cellEditor");
    }
  }

  public void addDataTypeSelectProperty() {
    addDataTypeSelectProperty("dataType");
  }

  public void addDataTypeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.DataType, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.DataType, "dataType");
    }
  }

  public void addShowValueSelectProperty() {
    addShowValueSelectProperty("showValue");
  }

  public void addShowValueSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ShowValue, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ShowValue, "showValue");
    }
  }

  public void addCanSortSelectProperty() {
    addCanSortSelectProperty("canSort");
  }

  public void addCanSortSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.CanSort, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.CanSort, "canSort");
    }
  }

  public void addCanResizeSelectProperty() {
    addCanResizeSelectProperty("canResize");
  }

  public void addCanResizeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.CanResize, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.CanResize, "canResize");
    }
  }

  public void addCanFilterSelectProperty() {
    addCanFilterSelectProperty("canFilter");
  }

  public void addCanFilterSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.CanFilter, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.CanFilter, "canFilter");
    }
  }

  public void addCanReOrderSelectProperty() {
    addCanReOrderSelectProperty("canReOrder");
  }

  public void addCanReOrderSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.CanReOrder, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.CanReOrder, "canReOrder");
    }
  }

  public void addFrozenSelectProperty() {
    addFrozenSelectProperty("frozen");
  }

  public void addFrozenSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Frozen, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Frozen, "frozen");
    }
  }

  public void addSortIndexSelectProperty() {
    addSortIndexSelectProperty("sortIndex");
  }

  public void addSortIndexSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.SortIndex, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.SortIndex, "sortIndex");
    }
  }

  public void addLastModifyUserSelectProperty() {
    addLastModifyUserSelectProperty("lastModifyUser");
  }

  public void addLastModifyUserSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.LastModifyUser, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.LastModifyUser, "lastModifyUser");
    }
  }

  public void addLastModifyTimeSelectProperty() {
    addLastModifyTimeSelectProperty("lastModifyTime");
  }

  public void addLastModifyTimeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.LastModifyTime, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.LastModifyTime, "lastModifyTime");
    }
  }

  public void addRemarksSelectProperty() {
    addRemarksSelectProperty("remarks");
  }

  public void addRemarksSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Remarks, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Remarks, "remarks");
    }
  }

  public void addStatusSelectProperty() {
    addStatusSelectProperty("status");
  }

  public void addStatusSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.Status, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.Status, "status");
    }
  }

  public void addModelPropertyIdSelectProperty() {
    addModelPropertyIdSelectProperty("modelPropertyId");
  }

  public void addModelPropertyIdSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ModelPropertyId, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ModelPropertyId, "modelPropertyId");
    }
  }

  public void addActionGroupIdSelectProperty() {
    addActionGroupIdSelectProperty("actionGroupId");
  }

  public void addActionGroupIdSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ActionGroupId, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ActionGroupId, "actionGroupId");
    }
  }

  public void addListDataSourceCodeSelectProperty() {
    addListDataSourceCodeSelectProperty("listDataSourceCode");
  }

  public void addListDataSourceCodeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ListDataSourceCode, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ListDataSourceCode, "listDataSourceCode");
    }
  }

  public void addListDataSourceNameSelectProperty() {
    addListDataSourceNameSelectProperty("listDataSourceName");
  }

  public void addListDataSourceNameSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ListDataSourceName, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ListDataSourceName, "listDataSourceName");
    }
  }

  public void addActionGroupCodeSelectProperty() {
    addActionGroupCodeSelectProperty("actionGroupCode");
  }

  public void addActionGroupCodeSelectProperty(String aAlias) {
    if (StringUtils.isNotBlank(aAlias)) {
      addSelectProperty(IProductUITableColumnDAO.ActionGroupCode, aAlias);
    } else {
      addSelectProperty(IProductUITableColumnDAO.ActionGroupCode, "actionGroupCode");
    }
  }

  public void addAllSelectProperties() {

    addIdSelectProperty();

    addTableIdSelectProperty();

    addCodeSelectProperty();

    addTitleSelectProperty();

    addTitleKeySelectProperty();

    addTitleIconSelectProperty();

    addWidthSelectProperty();

    addAlignSelectProperty();

    addFormatValueSelectProperty();

    addListDataSourceSelectProperty();

    addCellEditorSelectProperty();

    addDataTypeSelectProperty();

    addShowValueSelectProperty();

    addCanSortSelectProperty();

    addCanResizeSelectProperty();

    addCanFilterSelectProperty();

    addCanReOrderSelectProperty();

    addFrozenSelectProperty();

    addSortIndexSelectProperty();

    addLastModifyUserSelectProperty();

    addLastModifyTimeSelectProperty();

    addRemarksSelectProperty();

    addStatusSelectProperty();

    addModelPropertyIdSelectProperty();

    addActionGroupIdSelectProperty();

    addListDataSourceCodeSelectProperty();

    addListDataSourceNameSelectProperty();

    addActionGroupCodeSelectProperty();
  }

  public static class Criteria extends BaseWhereCriterion<ProductUITableColumnDAOQueryBean> {

    protected Criteria(ProductUITableColumnDAOQueryBean aParentObject) {
      super(aParentObject);
    }

    public Criteria andIdIsNull() {
      addCriterion(IProductUITableColumnDAO.Id + " is null");
      return this;
    }

    public Criteria andIdIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Id + " is not null");
      return this;
    }

    public Criteria andIdIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Id
              + " is not null AND "
              + IProductUITableColumnDAO.Id
              + " <> ''");
      return this;
    }

    public Criteria andIdIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Id
              + " is null OR "
              + IProductUITableColumnDAO.Id
              + " = '')");
      return this;
    }

    public Criteria andIdEqualTo(long value) {
      return andIdEqualTo(Long.valueOf(value));
    }

    public Criteria andIdEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " = ", value, "id");
      return this;
    }

    public Criteria andIdEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdNotEqualTo(long value) {
      return andIdNotEqualTo(Long.valueOf(value));
    }

    public Criteria andIdNotEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " <>", value, "id");
      return this;
    }

    public Criteria andIdNotEqualToOrIsNull(long value) {
      return andIdNotEqualToOrIsNull(Long.valueOf(value));
    }

    public Criteria andIdNotEqualToOrIsNull(java.lang.Long value) {

      addCriterion(
          IProductUITableColumnDAO.Id + " is null OR " + IProductUITableColumnDAO.Id + " <>",
          value,
          "id");
      return this;
    }

    public Criteria andIdNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdNotEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdGreaterThan(long value) {
      return andIdGreaterThan(Long.valueOf(value));
    }

    public Criteria andIdGreaterThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " >", value, "id");
      return this;
    }

    public Criteria andIdGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdGreaterThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdGreaterThanOrEqualTo(long value) {
      return andIdGreaterThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andIdGreaterThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " >=", value, "id");
      return this;
    }

    public Criteria andIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdLessThan(long value) {
      return andIdLessThan(Long.valueOf(value));
    }

    public Criteria andIdLessThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " <", value, "id");
      return this;
    }

    public Criteria andIdLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdLessThanOrEqualTo(long value) {
      return andIdLessThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andIdLessThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.Id + " <=", value, "id");
      return this;
    }

    public Criteria andIdLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Id);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andIdLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdIn(long[] values) {
      if (values.length == 1) {
        return andIdEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " in", values, "id");
        return this;
      }
    }

    public Criteria andIdNotIn(long[] values) {
      if (values.length == 1) {
        return andIdNotEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " not in", values, "id");
        return this;
      }
    }

    public Criteria andIdIn(List<java.lang.Long> values) {

      if (values.size() == 1) {
        return andIdEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " in", values, "id");
        return this;
      }
    }

    public Criteria andIdNotIn(List<java.lang.Long> values) {
      if (values.size() == 1) {
        return andIdNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " not in", values, "id");
        return this;
      }
    }

    public Criteria andIdIn(java.lang.Long[] values) {

      if (values.length == 1) {
        return andIdEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " in", Arrays.asList(values), "id");
        return this;
      }
    }

    public Criteria andIdNotIn(java.lang.Long[] values) {
      if (values.length == 1) {
        return andIdNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Id + " not in", Arrays.asList(values), "id");
        return this;
      }
    }

    public Criteria andIdIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Id + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andIdBetween(long value1, long value2) {
      addCriterion(IProductUITableColumnDAO.Id + " between", value1, value2, "id");
      return this;
    }

    public Criteria andIdBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(IProductUITableColumnDAO.Id + " between", value1, value2, "id");
      return this;
    }

    public Criteria andIdNotBetween(long value1, long value2) {
      addCriterion(IProductUITableColumnDAO.Id + " not between", value1, value2, "id");
      return this;
    }

    public Criteria andIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(IProductUITableColumnDAO.Id + " not between", value1, value2, "id");
      return this;
    }

    public Criteria andTableIdIsNull() {
      addCriterion(IProductUITableColumnDAO.TableId + " is null");
      return this;
    }

    public Criteria andTableIdIsNotNull() {
      addCriterion(IProductUITableColumnDAO.TableId + " is not null");
      return this;
    }

    public Criteria andTableIdIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.TableId
              + " is not null AND "
              + IProductUITableColumnDAO.TableId
              + " <> ''");
      return this;
    }

    public Criteria andTableIdIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.TableId
              + " is null OR "
              + IProductUITableColumnDAO.TableId
              + " = '')");
      return this;
    }

    public Criteria andTableIdEqualTo(long value) {
      return andTableIdEqualTo(Long.valueOf(value));
    }

    public Criteria andTableIdEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " = ", value, "tableId");
      return this;
    }

    public Criteria andTableIdEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdNotEqualTo(long value) {
      return andTableIdNotEqualTo(Long.valueOf(value));
    }

    public Criteria andTableIdNotEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " <>", value, "tableId");
      return this;
    }

    public Criteria andTableIdNotEqualToOrIsNull(long value) {
      return andTableIdNotEqualToOrIsNull(Long.valueOf(value));
    }

    public Criteria andTableIdNotEqualToOrIsNull(java.lang.Long value) {

      addCriterion(
          IProductUITableColumnDAO.TableId
              + " is null OR "
              + IProductUITableColumnDAO.TableId
              + " <>",
          value,
          "tableId");
      return this;
    }

    public Criteria andTableIdNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdGreaterThan(long value) {
      return andTableIdGreaterThan(Long.valueOf(value));
    }

    public Criteria andTableIdGreaterThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " >", value, "tableId");
      return this;
    }

    public Criteria andTableIdGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdGreaterThanOrEqualTo(long value) {
      return andTableIdGreaterThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andTableIdGreaterThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " >=", value, "tableId");
      return this;
    }

    public Criteria andTableIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdLessThan(long value) {
      return andTableIdLessThan(Long.valueOf(value));
    }

    public Criteria andTableIdLessThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " <", value, "tableId");
      return this;
    }

    public Criteria andTableIdLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdLessThanOrEqualTo(long value) {
      return andTableIdLessThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andTableIdLessThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.TableId + " <=", value, "tableId");
      return this;
    }

    public Criteria andTableIdLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TableId);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTableIdLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdIn(long[] values) {
      if (values.length == 1) {
        return andTableIdEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.TableId + " in", values, "tableId");
        return this;
      }
    }

    public Criteria andTableIdNotIn(long[] values) {
      if (values.length == 1) {
        return andTableIdNotEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.TableId + " not in", values, "tableId");
        return this;
      }
    }

    public Criteria andTableIdIn(List<java.lang.Long> values) {

      if (values.size() == 1) {
        return andTableIdEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TableId + " in", values, "tableId");
        return this;
      }
    }

    public Criteria andTableIdNotIn(List<java.lang.Long> values) {
      if (values.size() == 1) {
        return andTableIdNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TableId + " not in", values, "tableId");
        return this;
      }
    }

    public Criteria andTableIdIn(java.lang.Long[] values) {

      if (values.length == 1) {
        return andTableIdEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.TableId + " in", Arrays.asList(values), "tableId");
        return this;
      }
    }

    public Criteria andTableIdNotIn(java.lang.Long[] values) {
      if (values.length == 1) {
        return andTableIdNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.TableId + " not in", Arrays.asList(values), "tableId");
        return this;
      }
    }

    public Criteria andTableIdIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TableId + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTableIdBetween(long value1, long value2) {
      addCriterion(IProductUITableColumnDAO.TableId + " between", value1, value2, "tableId");
      return this;
    }

    public Criteria andTableIdBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(IProductUITableColumnDAO.TableId + " between", value1, value2, "tableId");
      return this;
    }

    public Criteria andTableIdNotBetween(long value1, long value2) {
      addCriterion(IProductUITableColumnDAO.TableId + " not between", value1, value2, "tableId");
      return this;
    }

    public Criteria andTableIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(IProductUITableColumnDAO.TableId + " not between", value1, value2, "tableId");
      return this;
    }

    public Criteria andCodeIsNull() {
      addCriterion(IProductUITableColumnDAO.Code + " is null");
      return this;
    }

    public Criteria andCodeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Code + " is not null");
      return this;
    }

    public Criteria andCodeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Code
              + " is not null AND "
              + IProductUITableColumnDAO.Code
              + " <> ''");
      return this;
    }

    public Criteria andCodeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Code
              + " is null OR "
              + IProductUITableColumnDAO.Code
              + " = '')");
      return this;
    }

    public Criteria andCodeEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " = ", value, "code");
      return this;
    }

    public Criteria andCodeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " <>", value, "code");
      return this;
    }

    public Criteria andCodeNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Code + " is null OR " + IProductUITableColumnDAO.Code + " <>",
          value,
          "code");
      return this;
    }

    public Criteria andCodeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeNotEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " >", value, "code");
      return this;
    }

    public Criteria andCodeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeGreaterThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " >=", value, "code");
      return this;
    }

    public Criteria andCodeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " <", value, "code");
      return this;
    }

    public Criteria andCodeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Code + " <=", value, "code");
      return this;
    }

    public Criteria andCodeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Code);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCodeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Code + " like", buffer.toString(), "code");
      return this;
    }

    public Criteria andCodeNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Code + " not like", buffer.toString(), "code");
      return this;
    }

    public Criteria andCodeIn(List<String> values) {

      if (values.size() == 1) {
        return andCodeEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Code + " in", values, "code");
        return this;
      }
    }

    public Criteria andCodeNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCodeNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Code + " not in", values, "code");
        return this;
      }
    }

    public Criteria andCodeIn(String[] values) {

      if (values.length == 1) {
        return andCodeEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Code + " in", Arrays.asList(values), "code");
        return this;
      }
    }

    public Criteria andCodeNotIn(String[] values) {
      if (values.length == 1) {
        return andCodeNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Code + " not in", Arrays.asList(values), "code");
        return this;
      }
    }

    public Criteria andCodeIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Code + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCodeBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Code + " between", value1, value2, "code");
      return this;
    }

    public Criteria andCodeNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Code + " not between", value1, value2, "code");
      return this;
    }

    public Criteria andTitleIsNull() {
      addCriterion(IProductUITableColumnDAO.Title + " is null");
      return this;
    }

    public Criteria andTitleIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Title + " is not null");
      return this;
    }

    public Criteria andTitleIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Title
              + " is not null AND "
              + IProductUITableColumnDAO.Title
              + " <> ''");
      return this;
    }

    public Criteria andTitleIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Title
              + " is null OR "
              + IProductUITableColumnDAO.Title
              + " = '')");
      return this;
    }

    public Criteria andTitleEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " = ", value, "title");
      return this;
    }

    public Criteria andTitleEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " <>", value, "title");
      return this;
    }

    public Criteria andTitleNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Title + " is null OR " + IProductUITableColumnDAO.Title + " <>",
          value,
          "title");
      return this;
    }

    public Criteria andTitleNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleNotEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " >", value, "title");
      return this;
    }

    public Criteria andTitleGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " >=", value, "title");
      return this;
    }

    public Criteria andTitleGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " <", value, "title");
      return this;
    }

    public Criteria andTitleLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Title + " <=", value, "title");
      return this;
    }

    public Criteria andTitleLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Title);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Title + " like", buffer.toString(), "title");
      return this;
    }

    public Criteria andTitleNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Title + " not like", buffer.toString(), "title");
      return this;
    }

    public Criteria andTitleIn(List<String> values) {

      if (values.size() == 1) {
        return andTitleEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Title + " in", values, "title");
        return this;
      }
    }

    public Criteria andTitleNotIn(List<String> values) {
      if (values.size() == 1) {
        return andTitleNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Title + " not in", values, "title");
        return this;
      }
    }

    public Criteria andTitleIn(String[] values) {

      if (values.length == 1) {
        return andTitleEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Title + " in", Arrays.asList(values), "title");
        return this;
      }
    }

    public Criteria andTitleNotIn(String[] values) {
      if (values.length == 1) {
        return andTitleNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Title + " not in", Arrays.asList(values), "title");
        return this;
      }
    }

    public Criteria andTitleIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Title + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Title + " between", value1, value2, "title");
      return this;
    }

    public Criteria andTitleNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Title + " not between", value1, value2, "title");
      return this;
    }

    public Criteria andTitleKeyIsNull() {
      addCriterion(IProductUITableColumnDAO.TitleKey + " is null");
      return this;
    }

    public Criteria andTitleKeyIsNotNull() {
      addCriterion(IProductUITableColumnDAO.TitleKey + " is not null");
      return this;
    }

    public Criteria andTitleKeyIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.TitleKey
              + " is not null AND "
              + IProductUITableColumnDAO.TitleKey
              + " <> ''");
      return this;
    }

    public Criteria andTitleKeyIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.TitleKey
              + " is null OR "
              + IProductUITableColumnDAO.TitleKey
              + " = '')");
      return this;
    }

    public Criteria andTitleKeyEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " = ", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " <>", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.TitleKey
              + " is null OR "
              + IProductUITableColumnDAO.TitleKey
              + " <>",
          value,
          "titleKey");
      return this;
    }

    public Criteria andTitleKeyNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " >", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " >=", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " <", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleKey + " <=", value, "titleKey");
      return this;
    }

    public Criteria andTitleKeyLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleKey);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleKeyLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.TitleKey + " like", buffer.toString(), "titleKey");
      return this;
    }

    public Criteria andTitleKeyNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.TitleKey + " not like", buffer.toString(), "titleKey");
      return this;
    }

    public Criteria andTitleKeyIn(List<String> values) {

      if (values.size() == 1) {
        return andTitleKeyEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TitleKey + " in", values, "titleKey");
        return this;
      }
    }

    public Criteria andTitleKeyNotIn(List<String> values) {
      if (values.size() == 1) {
        return andTitleKeyNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TitleKey + " not in", values, "titleKey");
        return this;
      }
    }

    public Criteria andTitleKeyIn(String[] values) {

      if (values.length == 1) {
        return andTitleKeyEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.TitleKey + " in", Arrays.asList(values), "titleKey");
        return this;
      }
    }

    public Criteria andTitleKeyNotIn(String[] values) {
      if (values.length == 1) {
        return andTitleKeyNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.TitleKey + " not in", Arrays.asList(values), "titleKey");
        return this;
      }
    }

    public Criteria andTitleKeyIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleKeyBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " between", value1, value2, "titleKey");
      return this;
    }

    public Criteria andTitleKeyNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.TitleKey + " not between", value1, value2, "titleKey");
      return this;
    }

    public Criteria andTitleIconIsNull() {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " is null");
      return this;
    }

    public Criteria andTitleIconIsNotNull() {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " is not null");
      return this;
    }

    public Criteria andTitleIconIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.TitleIcon
              + " is not null AND "
              + IProductUITableColumnDAO.TitleIcon
              + " <> ''");
      return this;
    }

    public Criteria andTitleIconIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.TitleIcon
              + " is null OR "
              + IProductUITableColumnDAO.TitleIcon
              + " = '')");
      return this;
    }

    public Criteria andTitleIconEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " = ", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " <>", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.TitleIcon
              + " is null OR "
              + IProductUITableColumnDAO.TitleIcon
              + " <>",
          value,
          "titleIcon");
      return this;
    }

    public Criteria andTitleIconNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " >", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " >=", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " <", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.TitleIcon + " <=", value, "titleIcon");
      return this;
    }

    public Criteria andTitleIconLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.TitleIcon);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andTitleIconLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.TitleIcon + " like", buffer.toString(), "titleIcon");
      return this;
    }

    public Criteria andTitleIconNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.TitleIcon + " not like", buffer.toString(), "titleIcon");
      return this;
    }

    public Criteria andTitleIconIn(List<String> values) {

      if (values.size() == 1) {
        return andTitleIconEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TitleIcon + " in", values, "titleIcon");
        return this;
      }
    }

    public Criteria andTitleIconNotIn(List<String> values) {
      if (values.size() == 1) {
        return andTitleIconNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.TitleIcon + " not in", values, "titleIcon");
        return this;
      }
    }

    public Criteria andTitleIconIn(String[] values) {

      if (values.length == 1) {
        return andTitleIconEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.TitleIcon + " in", Arrays.asList(values), "titleIcon");
        return this;
      }
    }

    public Criteria andTitleIconNotIn(String[] values) {
      if (values.length == 1) {
        return andTitleIconNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.TitleIcon + " not in", Arrays.asList(values), "titleIcon");
        return this;
      }
    }

    public Criteria andTitleIconIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andTitleIconBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.TitleIcon + " between", value1, value2, "titleIcon");
      return this;
    }

    public Criteria andTitleIconNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.TitleIcon + " not between", value1, value2, "titleIcon");
      return this;
    }

    public Criteria andWidthIsNull() {
      addCriterion(IProductUITableColumnDAO.Width + " is null");
      return this;
    }

    public Criteria andWidthIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Width + " is not null");
      return this;
    }

    public Criteria andWidthIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Width
              + " is not null AND "
              + IProductUITableColumnDAO.Width
              + " <> ''");
      return this;
    }

    public Criteria andWidthIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Width
              + " is null OR "
              + IProductUITableColumnDAO.Width
              + " = '')");
      return this;
    }

    public Criteria andWidthEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " = ", value, "width");
      return this;
    }

    public Criteria andWidthEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " <>", value, "width");
      return this;
    }

    public Criteria andWidthNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Width + " is null OR " + IProductUITableColumnDAO.Width + " <>",
          value,
          "width");
      return this;
    }

    public Criteria andWidthNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthNotEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " >", value, "width");
      return this;
    }

    public Criteria andWidthGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " >=", value, "width");
      return this;
    }

    public Criteria andWidthGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " <", value, "width");
      return this;
    }

    public Criteria andWidthLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Width + " <=", value, "width");
      return this;
    }

    public Criteria andWidthLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Width);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andWidthLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Width + " like", buffer.toString(), "width");
      return this;
    }

    public Criteria andWidthNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Width + " not like", buffer.toString(), "width");
      return this;
    }

    public Criteria andWidthIn(List<String> values) {

      if (values.size() == 1) {
        return andWidthEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Width + " in", values, "width");
        return this;
      }
    }

    public Criteria andWidthNotIn(List<String> values) {
      if (values.size() == 1) {
        return andWidthNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Width + " not in", values, "width");
        return this;
      }
    }

    public Criteria andWidthIn(String[] values) {

      if (values.length == 1) {
        return andWidthEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Width + " in", Arrays.asList(values), "width");
        return this;
      }
    }

    public Criteria andWidthNotIn(String[] values) {
      if (values.length == 1) {
        return andWidthNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Width + " not in", Arrays.asList(values), "width");
        return this;
      }
    }

    public Criteria andWidthIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Width + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andWidthBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Width + " between", value1, value2, "width");
      return this;
    }

    public Criteria andWidthNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Width + " not between", value1, value2, "width");
      return this;
    }

    public Criteria andAlignIsNull() {
      addCriterion(IProductUITableColumnDAO.Align + " is null");
      return this;
    }

    public Criteria andAlignIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Align + " is not null");
      return this;
    }

    public Criteria andAlignIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Align
              + " is not null AND "
              + IProductUITableColumnDAO.Align
              + " <> ''");
      return this;
    }

    public Criteria andAlignIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Align
              + " is null OR "
              + IProductUITableColumnDAO.Align
              + " = '')");
      return this;
    }

    public Criteria andAlignEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " = ", value, "align");
      return this;
    }

    public Criteria andAlignEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " <>", value, "align");
      return this;
    }

    public Criteria andAlignNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Align + " is null OR " + IProductUITableColumnDAO.Align + " <>",
          value,
          "align");
      return this;
    }

    public Criteria andAlignNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignNotEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " >", value, "align");
      return this;
    }

    public Criteria andAlignGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " >=", value, "align");
      return this;
    }

    public Criteria andAlignGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " <", value, "align");
      return this;
    }

    public Criteria andAlignLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Align + " <=", value, "align");
      return this;
    }

    public Criteria andAlignLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Align);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andAlignLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Align + " like", buffer.toString(), "align");
      return this;
    }

    public Criteria andAlignNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Align + " not like", buffer.toString(), "align");
      return this;
    }

    public Criteria andAlignIn(List<String> values) {

      if (values.size() == 1) {
        return andAlignEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Align + " in", values, "align");
        return this;
      }
    }

    public Criteria andAlignNotIn(List<String> values) {
      if (values.size() == 1) {
        return andAlignNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Align + " not in", values, "align");
        return this;
      }
    }

    public Criteria andAlignIn(String[] values) {

      if (values.length == 1) {
        return andAlignEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Align + " in", Arrays.asList(values), "align");
        return this;
      }
    }

    public Criteria andAlignNotIn(String[] values) {
      if (values.length == 1) {
        return andAlignNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Align + " not in", Arrays.asList(values), "align");
        return this;
      }
    }

    public Criteria andAlignIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Align + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andAlignBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Align + " between", value1, value2, "align");
      return this;
    }

    public Criteria andAlignNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Align + " not between", value1, value2, "align");
      return this;
    }

    public Criteria andFormatValueIsNull() {
      addCriterion(IProductUITableColumnDAO.FormatValue + " is null");
      return this;
    }

    public Criteria andFormatValueIsNotNull() {
      addCriterion(IProductUITableColumnDAO.FormatValue + " is not null");
      return this;
    }

    public Criteria andFormatValueIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.FormatValue
              + " is not null AND "
              + IProductUITableColumnDAO.FormatValue
              + " <> ''");
      return this;
    }

    public Criteria andFormatValueIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.FormatValue
              + " is null OR "
              + IProductUITableColumnDAO.FormatValue
              + " = '')");
      return this;
    }

    public Criteria andFormatValueEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " = ", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " <>", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.FormatValue
              + " is null OR "
              + IProductUITableColumnDAO.FormatValue
              + " <>",
          value,
          "formatValue");
      return this;
    }

    public Criteria andFormatValueNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " >", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " >=", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " <", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.FormatValue + " <=", value, "formatValue");
      return this;
    }

    public Criteria andFormatValueLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.FormatValue);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFormatValueLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.FormatValue + " like", buffer.toString(), "formatValue");
      return this;
    }

    public Criteria andFormatValueNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.FormatValue + " not like", buffer.toString(), "formatValue");
      return this;
    }

    public Criteria andFormatValueIn(List<String> values) {

      if (values.size() == 1) {
        return andFormatValueEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.FormatValue + " in", values, "formatValue");
        return this;
      }
    }

    public Criteria andFormatValueNotIn(List<String> values) {
      if (values.size() == 1) {
        return andFormatValueNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.FormatValue + " not in", values, "formatValue");
        return this;
      }
    }

    public Criteria andFormatValueIn(String[] values) {

      if (values.length == 1) {
        return andFormatValueEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.FormatValue + " in", Arrays.asList(values), "formatValue");
        return this;
      }
    }

    public Criteria andFormatValueNotIn(String[] values) {
      if (values.length == 1) {
        return andFormatValueNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.FormatValue + " not in", Arrays.asList(values), "formatValue");
        return this;
      }
    }

    public Criteria andFormatValueIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.FormatValue + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andFormatValueBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.FormatValue + " between", value1, value2, "formatValue");
      return this;
    }

    public Criteria andFormatValueNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.FormatValue + " not between", value1, value2, "formatValue");
      return this;
    }

    public Criteria andListDataSourceIsNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " is null");
      return this;
    }

    public Criteria andListDataSourceIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " is not null");
      return this;
    }

    public Criteria andListDataSourceIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ListDataSource
              + " is not null AND "
              + IProductUITableColumnDAO.ListDataSource
              + " <> ''");
      return this;
    }

    public Criteria andListDataSourceIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ListDataSource
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSource
              + " = '')");
      return this;
    }

    public Criteria andListDataSourceEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " = ", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " <>", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSource
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSource
              + " <>",
          value,
          "listDataSource");
      return this;
    }

    public Criteria andListDataSourceNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " >", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " >=", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " <", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSource + " <=", value, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSource);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSource + " like", buffer.toString(), "listDataSource");
      return this;
    }

    public Criteria andListDataSourceNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSource + " not like",
          buffer.toString(),
          "listDataSource");
      return this;
    }

    public Criteria andListDataSourceIn(List<String> values) {

      if (values.size() == 1) {
        return andListDataSourceEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ListDataSource + " in", values, "listDataSource");
        return this;
      }
    }

    public Criteria andListDataSourceNotIn(List<String> values) {
      if (values.size() == 1) {
        return andListDataSourceNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ListDataSource + " not in", values, "listDataSource");
        return this;
      }
    }

    public Criteria andListDataSourceIn(String[] values) {

      if (values.length == 1) {
        return andListDataSourceEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSource + " in",
            Arrays.asList(values),
            "listDataSource");
        return this;
      }
    }

    public Criteria andListDataSourceNotIn(String[] values) {
      if (values.length == 1) {
        return andListDataSourceNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSource + " not in",
            Arrays.asList(values),
            "listDataSource");
        return this;
      }
    }

    public Criteria andListDataSourceIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSource + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSource + " between", value1, value2, "listDataSource");
      return this;
    }

    public Criteria andListDataSourceNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSource + " not between",
          value1,
          value2,
          "listDataSource");
      return this;
    }

    public Criteria andCellEditorIsNull() {
      addCriterion(IProductUITableColumnDAO.CellEditor + " is null");
      return this;
    }

    public Criteria andCellEditorIsNotNull() {
      addCriterion(IProductUITableColumnDAO.CellEditor + " is not null");
      return this;
    }

    public Criteria andCellEditorIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.CellEditor
              + " is not null AND "
              + IProductUITableColumnDAO.CellEditor
              + " <> ''");
      return this;
    }

    public Criteria andCellEditorIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.CellEditor
              + " is null OR "
              + IProductUITableColumnDAO.CellEditor
              + " = '')");
      return this;
    }

    public Criteria andCellEditorEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " = ", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " <>", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.CellEditor
              + " is null OR "
              + IProductUITableColumnDAO.CellEditor
              + " <>",
          value,
          "cellEditor");
      return this;
    }

    public Criteria andCellEditorNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " >", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " >=", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " <", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CellEditor + " <=", value, "cellEditor");
      return this;
    }

    public Criteria andCellEditorLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CellEditor);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCellEditorLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CellEditor + " like", buffer.toString(), "cellEditor");
      return this;
    }

    public Criteria andCellEditorNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.CellEditor + " not like", buffer.toString(), "cellEditor");
      return this;
    }

    public Criteria andCellEditorIn(List<String> values) {

      if (values.size() == 1) {
        return andCellEditorEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CellEditor + " in", values, "cellEditor");
        return this;
      }
    }

    public Criteria andCellEditorNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCellEditorNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CellEditor + " not in", values, "cellEditor");
        return this;
      }
    }

    public Criteria andCellEditorIn(String[] values) {

      if (values.length == 1) {
        return andCellEditorEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CellEditor + " in", Arrays.asList(values), "cellEditor");
        return this;
      }
    }

    public Criteria andCellEditorNotIn(String[] values) {
      if (values.length == 1) {
        return andCellEditorNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CellEditor + " not in", Arrays.asList(values), "cellEditor");
        return this;
      }
    }

    public Criteria andCellEditorIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCellEditorBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CellEditor + " between", value1, value2, "cellEditor");
      return this;
    }

    public Criteria andCellEditorNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.CellEditor + " not between", value1, value2, "cellEditor");
      return this;
    }

    public Criteria andDataTypeIsNull() {
      addCriterion(IProductUITableColumnDAO.DataType + " is null");
      return this;
    }

    public Criteria andDataTypeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.DataType + " is not null");
      return this;
    }

    public Criteria andDataTypeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.DataType
              + " is not null AND "
              + IProductUITableColumnDAO.DataType
              + " <> ''");
      return this;
    }

    public Criteria andDataTypeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.DataType
              + " is null OR "
              + IProductUITableColumnDAO.DataType
              + " = '')");
      return this;
    }

    public Criteria andDataTypeEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " = ", value, "dataType");
      return this;
    }

    public Criteria andDataTypeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " <>", value, "dataType");
      return this;
    }

    public Criteria andDataTypeNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.DataType
              + " is null OR "
              + IProductUITableColumnDAO.DataType
              + " <>",
          value,
          "dataType");
      return this;
    }

    public Criteria andDataTypeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " >", value, "dataType");
      return this;
    }

    public Criteria andDataTypeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " >=", value, "dataType");
      return this;
    }

    public Criteria andDataTypeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " <", value, "dataType");
      return this;
    }

    public Criteria andDataTypeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.DataType + " <=", value, "dataType");
      return this;
    }

    public Criteria andDataTypeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.DataType);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andDataTypeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.DataType + " like", buffer.toString(), "dataType");
      return this;
    }

    public Criteria andDataTypeNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.DataType + " not like", buffer.toString(), "dataType");
      return this;
    }

    public Criteria andDataTypeIn(List<String> values) {

      if (values.size() == 1) {
        return andDataTypeEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.DataType + " in", values, "dataType");
        return this;
      }
    }

    public Criteria andDataTypeNotIn(List<String> values) {
      if (values.size() == 1) {
        return andDataTypeNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.DataType + " not in", values, "dataType");
        return this;
      }
    }

    public Criteria andDataTypeIn(String[] values) {

      if (values.length == 1) {
        return andDataTypeEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.DataType + " in", Arrays.asList(values), "dataType");
        return this;
      }
    }

    public Criteria andDataTypeNotIn(String[] values) {
      if (values.length == 1) {
        return andDataTypeNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.DataType + " not in", Arrays.asList(values), "dataType");
        return this;
      }
    }

    public Criteria andDataTypeIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.DataType + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andDataTypeBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.DataType + " between", value1, value2, "dataType");
      return this;
    }

    public Criteria andDataTypeNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.DataType + " not between", value1, value2, "dataType");
      return this;
    }

    public Criteria andShowValueIsNull() {
      addCriterion(IProductUITableColumnDAO.ShowValue + " is null");
      return this;
    }

    public Criteria andShowValueIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ShowValue + " is not null");
      return this;
    }

    public Criteria andShowValueIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ShowValue
              + " is not null AND "
              + IProductUITableColumnDAO.ShowValue
              + " <> ''");
      return this;
    }

    public Criteria andShowValueIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ShowValue
              + " is null OR "
              + IProductUITableColumnDAO.ShowValue
              + " = '')");
      return this;
    }

    public Criteria andShowValueEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " = ", value, "showValue");
      return this;
    }

    public Criteria andShowValueEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " <>", value, "showValue");
      return this;
    }

    public Criteria andShowValueNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.ShowValue
              + " is null OR "
              + IProductUITableColumnDAO.ShowValue
              + " <>",
          value,
          "showValue");
      return this;
    }

    public Criteria andShowValueNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " >", value, "showValue");
      return this;
    }

    public Criteria andShowValueGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " >=", value, "showValue");
      return this;
    }

    public Criteria andShowValueGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " <", value, "showValue");
      return this;
    }

    public Criteria andShowValueLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ShowValue + " <=", value, "showValue");
      return this;
    }

    public Criteria andShowValueLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ShowValue);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andShowValueLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.ShowValue + " like", buffer.toString(), "showValue");
      return this;
    }

    public Criteria andShowValueNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ShowValue + " not like", buffer.toString(), "showValue");
      return this;
    }

    public Criteria andShowValueIn(List<String> values) {

      if (values.size() == 1) {
        return andShowValueEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ShowValue + " in", values, "showValue");
        return this;
      }
    }

    public Criteria andShowValueNotIn(List<String> values) {
      if (values.size() == 1) {
        return andShowValueNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ShowValue + " not in", values, "showValue");
        return this;
      }
    }

    public Criteria andShowValueIn(String[] values) {

      if (values.length == 1) {
        return andShowValueEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ShowValue + " in", Arrays.asList(values), "showValue");
        return this;
      }
    }

    public Criteria andShowValueNotIn(String[] values) {
      if (values.length == 1) {
        return andShowValueNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ShowValue + " not in", Arrays.asList(values), "showValue");
        return this;
      }
    }

    public Criteria andShowValueIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andShowValueBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.ShowValue + " between", value1, value2, "showValue");
      return this;
    }

    public Criteria andShowValueNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ShowValue + " not between", value1, value2, "showValue");
      return this;
    }

    public Criteria andCanSortIsNull() {
      addCriterion(IProductUITableColumnDAO.CanSort + " is null");
      return this;
    }

    public Criteria andCanSortIsNotNull() {
      addCriterion(IProductUITableColumnDAO.CanSort + " is not null");
      return this;
    }

    public Criteria andCanSortIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.CanSort
              + " is not null AND "
              + IProductUITableColumnDAO.CanSort
              + " <> ''");
      return this;
    }

    public Criteria andCanSortIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.CanSort
              + " is null OR "
              + IProductUITableColumnDAO.CanSort
              + " = '')");
      return this;
    }

    public Criteria andCanSortEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " = ", value, "canSort");
      return this;
    }

    public Criteria andCanSortEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " <>", value, "canSort");
      return this;
    }

    public Criteria andCanSortNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.CanSort
              + " is null OR "
              + IProductUITableColumnDAO.CanSort
              + " <>",
          value,
          "canSort");
      return this;
    }

    public Criteria andCanSortNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " >", value, "canSort");
      return this;
    }

    public Criteria andCanSortGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " >=", value, "canSort");
      return this;
    }

    public Criteria andCanSortGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " <", value, "canSort");
      return this;
    }

    public Criteria andCanSortLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanSort + " <=", value, "canSort");
      return this;
    }

    public Criteria andCanSortLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanSort);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanSortLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CanSort + " like", buffer.toString(), "canSort");
      return this;
    }

    public Criteria andCanSortNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CanSort + " not like", buffer.toString(), "canSort");
      return this;
    }

    public Criteria andCanSortIn(List<String> values) {

      if (values.size() == 1) {
        return andCanSortEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanSort + " in", values, "canSort");
        return this;
      }
    }

    public Criteria andCanSortNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCanSortNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanSort + " not in", values, "canSort");
        return this;
      }
    }

    public Criteria andCanSortIn(String[] values) {

      if (values.length == 1) {
        return andCanSortEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.CanSort + " in", Arrays.asList(values), "canSort");
        return this;
      }
    }

    public Criteria andCanSortNotIn(String[] values) {
      if (values.length == 1) {
        return andCanSortNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanSort + " not in", Arrays.asList(values), "canSort");
        return this;
      }
    }

    public Criteria andCanSortIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanSort + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanSortBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CanSort + " between", value1, value2, "canSort");
      return this;
    }

    public Criteria andCanSortNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CanSort + " not between", value1, value2, "canSort");
      return this;
    }

    public Criteria andCanResizeIsNull() {
      addCriterion(IProductUITableColumnDAO.CanResize + " is null");
      return this;
    }

    public Criteria andCanResizeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.CanResize + " is not null");
      return this;
    }

    public Criteria andCanResizeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.CanResize
              + " is not null AND "
              + IProductUITableColumnDAO.CanResize
              + " <> ''");
      return this;
    }

    public Criteria andCanResizeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.CanResize
              + " is null OR "
              + IProductUITableColumnDAO.CanResize
              + " = '')");
      return this;
    }

    public Criteria andCanResizeEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " = ", value, "canResize");
      return this;
    }

    public Criteria andCanResizeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " <>", value, "canResize");
      return this;
    }

    public Criteria andCanResizeNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.CanResize
              + " is null OR "
              + IProductUITableColumnDAO.CanResize
              + " <>",
          value,
          "canResize");
      return this;
    }

    public Criteria andCanResizeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " >", value, "canResize");
      return this;
    }

    public Criteria andCanResizeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " >=", value, "canResize");
      return this;
    }

    public Criteria andCanResizeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " <", value, "canResize");
      return this;
    }

    public Criteria andCanResizeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanResize + " <=", value, "canResize");
      return this;
    }

    public Criteria andCanResizeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanResize);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanResizeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CanResize + " like", buffer.toString(), "canResize");
      return this;
    }

    public Criteria andCanResizeNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.CanResize + " not like", buffer.toString(), "canResize");
      return this;
    }

    public Criteria andCanResizeIn(List<String> values) {

      if (values.size() == 1) {
        return andCanResizeEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanResize + " in", values, "canResize");
        return this;
      }
    }

    public Criteria andCanResizeNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCanResizeNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanResize + " not in", values, "canResize");
        return this;
      }
    }

    public Criteria andCanResizeIn(String[] values) {

      if (values.length == 1) {
        return andCanResizeEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanResize + " in", Arrays.asList(values), "canResize");
        return this;
      }
    }

    public Criteria andCanResizeNotIn(String[] values) {
      if (values.length == 1) {
        return andCanResizeNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanResize + " not in", Arrays.asList(values), "canResize");
        return this;
      }
    }

    public Criteria andCanResizeIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanResize + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanResizeBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CanResize + " between", value1, value2, "canResize");
      return this;
    }

    public Criteria andCanResizeNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.CanResize + " not between", value1, value2, "canResize");
      return this;
    }

    public Criteria andCanFilterIsNull() {
      addCriterion(IProductUITableColumnDAO.CanFilter + " is null");
      return this;
    }

    public Criteria andCanFilterIsNotNull() {
      addCriterion(IProductUITableColumnDAO.CanFilter + " is not null");
      return this;
    }

    public Criteria andCanFilterIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.CanFilter
              + " is not null AND "
              + IProductUITableColumnDAO.CanFilter
              + " <> ''");
      return this;
    }

    public Criteria andCanFilterIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.CanFilter
              + " is null OR "
              + IProductUITableColumnDAO.CanFilter
              + " = '')");
      return this;
    }

    public Criteria andCanFilterEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " = ", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " <>", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.CanFilter
              + " is null OR "
              + IProductUITableColumnDAO.CanFilter
              + " <>",
          value,
          "canFilter");
      return this;
    }

    public Criteria andCanFilterNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " >", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " >=", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " <", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanFilter + " <=", value, "canFilter");
      return this;
    }

    public Criteria andCanFilterLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanFilter);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanFilterLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CanFilter + " like", buffer.toString(), "canFilter");
      return this;
    }

    public Criteria andCanFilterNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.CanFilter + " not like", buffer.toString(), "canFilter");
      return this;
    }

    public Criteria andCanFilterIn(List<String> values) {

      if (values.size() == 1) {
        return andCanFilterEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanFilter + " in", values, "canFilter");
        return this;
      }
    }

    public Criteria andCanFilterNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCanFilterNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanFilter + " not in", values, "canFilter");
        return this;
      }
    }

    public Criteria andCanFilterIn(String[] values) {

      if (values.length == 1) {
        return andCanFilterEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanFilter + " in", Arrays.asList(values), "canFilter");
        return this;
      }
    }

    public Criteria andCanFilterNotIn(String[] values) {
      if (values.length == 1) {
        return andCanFilterNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanFilter + " not in", Arrays.asList(values), "canFilter");
        return this;
      }
    }

    public Criteria andCanFilterIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanFilterBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CanFilter + " between", value1, value2, "canFilter");
      return this;
    }

    public Criteria andCanFilterNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.CanFilter + " not between", value1, value2, "canFilter");
      return this;
    }

    public Criteria andCanReOrderIsNull() {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " is null");
      return this;
    }

    public Criteria andCanReOrderIsNotNull() {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " is not null");
      return this;
    }

    public Criteria andCanReOrderIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.CanReOrder
              + " is not null AND "
              + IProductUITableColumnDAO.CanReOrder
              + " <> ''");
      return this;
    }

    public Criteria andCanReOrderIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.CanReOrder
              + " is null OR "
              + IProductUITableColumnDAO.CanReOrder
              + " = '')");
      return this;
    }

    public Criteria andCanReOrderEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " = ", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " <>", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.CanReOrder
              + " is null OR "
              + IProductUITableColumnDAO.CanReOrder
              + " <>",
          value,
          "canReOrder");
      return this;
    }

    public Criteria andCanReOrderNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " >", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " >=", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " <", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.CanReOrder + " <=", value, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.CanReOrder);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andCanReOrderLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.CanReOrder + " like", buffer.toString(), "canReOrder");
      return this;
    }

    public Criteria andCanReOrderNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.CanReOrder + " not like", buffer.toString(), "canReOrder");
      return this;
    }

    public Criteria andCanReOrderIn(List<String> values) {

      if (values.size() == 1) {
        return andCanReOrderEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanReOrder + " in", values, "canReOrder");
        return this;
      }
    }

    public Criteria andCanReOrderNotIn(List<String> values) {
      if (values.size() == 1) {
        return andCanReOrderNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.CanReOrder + " not in", values, "canReOrder");
        return this;
      }
    }

    public Criteria andCanReOrderIn(String[] values) {

      if (values.length == 1) {
        return andCanReOrderEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanReOrder + " in", Arrays.asList(values), "canReOrder");
        return this;
      }
    }

    public Criteria andCanReOrderNotIn(String[] values) {
      if (values.length == 1) {
        return andCanReOrderNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.CanReOrder + " not in", Arrays.asList(values), "canReOrder");
        return this;
      }
    }

    public Criteria andCanReOrderIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andCanReOrderBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.CanReOrder + " between", value1, value2, "canReOrder");
      return this;
    }

    public Criteria andCanReOrderNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.CanReOrder + " not between", value1, value2, "canReOrder");
      return this;
    }

    public Criteria andFrozenIsNull() {
      addCriterion(IProductUITableColumnDAO.Frozen + " is null");
      return this;
    }

    public Criteria andFrozenIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Frozen + " is not null");
      return this;
    }

    public Criteria andFrozenIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Frozen
              + " is not null AND "
              + IProductUITableColumnDAO.Frozen
              + " <> ''");
      return this;
    }

    public Criteria andFrozenIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Frozen
              + " is null OR "
              + IProductUITableColumnDAO.Frozen
              + " = '')");
      return this;
    }

    public Criteria andFrozenEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " = ", value, "frozen");
      return this;
    }

    public Criteria andFrozenEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " <>", value, "frozen");
      return this;
    }

    public Criteria andFrozenNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Frozen
              + " is null OR "
              + IProductUITableColumnDAO.Frozen
              + " <>",
          value,
          "frozen");
      return this;
    }

    public Criteria andFrozenNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " >", value, "frozen");
      return this;
    }

    public Criteria andFrozenGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " >=", value, "frozen");
      return this;
    }

    public Criteria andFrozenGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " <", value, "frozen");
      return this;
    }

    public Criteria andFrozenLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Frozen + " <=", value, "frozen");
      return this;
    }

    public Criteria andFrozenLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Frozen);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andFrozenLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Frozen + " like", buffer.toString(), "frozen");
      return this;
    }

    public Criteria andFrozenNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Frozen + " not like", buffer.toString(), "frozen");
      return this;
    }

    public Criteria andFrozenIn(List<String> values) {

      if (values.size() == 1) {
        return andFrozenEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Frozen + " in", values, "frozen");
        return this;
      }
    }

    public Criteria andFrozenNotIn(List<String> values) {
      if (values.size() == 1) {
        return andFrozenNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Frozen + " not in", values, "frozen");
        return this;
      }
    }

    public Criteria andFrozenIn(String[] values) {

      if (values.length == 1) {
        return andFrozenEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Frozen + " in", Arrays.asList(values), "frozen");
        return this;
      }
    }

    public Criteria andFrozenNotIn(String[] values) {
      if (values.length == 1) {
        return andFrozenNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Frozen + " not in", Arrays.asList(values), "frozen");
        return this;
      }
    }

    public Criteria andFrozenIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Frozen + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andFrozenBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Frozen + " between", value1, value2, "frozen");
      return this;
    }

    public Criteria andFrozenNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Frozen + " not between", value1, value2, "frozen");
      return this;
    }

    public Criteria andSortIndexIsNull() {
      addCriterion(IProductUITableColumnDAO.SortIndex + " is null");
      return this;
    }

    public Criteria andSortIndexIsNotNull() {
      addCriterion(IProductUITableColumnDAO.SortIndex + " is not null");
      return this;
    }

    public Criteria andSortIndexIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.SortIndex
              + " is not null AND "
              + IProductUITableColumnDAO.SortIndex
              + " <> ''");
      return this;
    }

    public Criteria andSortIndexIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.SortIndex
              + " is null OR "
              + IProductUITableColumnDAO.SortIndex
              + " = '')");
      return this;
    }

    public Criteria andSortIndexEqualTo(int value) {
      return andSortIndexEqualTo(Integer.valueOf(value));
    }

    public Criteria andSortIndexEqualTo(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " = ", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexNotEqualTo(int value) {
      return andSortIndexNotEqualTo(Integer.valueOf(value));
    }

    public Criteria andSortIndexNotEqualTo(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " <>", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexNotEqualToOrIsNull(int value) {
      return andSortIndexNotEqualToOrIsNull(Integer.valueOf(value));
    }

    public Criteria andSortIndexNotEqualToOrIsNull(java.lang.Integer value) {

      addCriterion(
          IProductUITableColumnDAO.SortIndex
              + " is null OR "
              + IProductUITableColumnDAO.SortIndex
              + " <>",
          value,
          "sortIndex");
      return this;
    }

    public Criteria andSortIndexNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexGreaterThan(int value) {
      return andSortIndexGreaterThan(Integer.valueOf(value));
    }

    public Criteria andSortIndexGreaterThan(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " >", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexGreaterThanOrEqualTo(int value) {
      return andSortIndexGreaterThanOrEqualTo(Integer.valueOf(value));
    }

    public Criteria andSortIndexGreaterThanOrEqualTo(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " >=", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexLessThan(int value) {
      return andSortIndexLessThan(Integer.valueOf(value));
    }

    public Criteria andSortIndexLessThan(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " <", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexLessThanOrEqualTo(int value) {
      return andSortIndexLessThanOrEqualTo(Integer.valueOf(value));
    }

    public Criteria andSortIndexLessThanOrEqualTo(java.lang.Integer value) {

      addCriterion(IProductUITableColumnDAO.SortIndex + " <=", value, "sortIndex");
      return this;
    }

    public Criteria andSortIndexLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.SortIndex);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andSortIndexLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexIn(int[] values) {
      if (values.length == 1) {
        return andSortIndexEqualTo((java.lang.Integer) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.SortIndex + " in", values, "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexNotIn(int[] values) {
      if (values.length == 1) {
        return andSortIndexNotEqualTo((java.lang.Integer) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.SortIndex + " not in", values, "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexIn(List<java.lang.Integer> values) {

      if (values.size() == 1) {
        return andSortIndexEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.SortIndex + " in", values, "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexNotIn(List<java.lang.Integer> values) {
      if (values.size() == 1) {
        return andSortIndexNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.SortIndex + " not in", values, "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexIn(java.lang.Integer[] values) {

      if (values.length == 1) {
        return andSortIndexEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.SortIndex + " in", Arrays.asList(values), "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexNotIn(java.lang.Integer[] values) {
      if (values.length == 1) {
        return andSortIndexNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.SortIndex + " not in", Arrays.asList(values), "sortIndex");
        return this;
      }
    }

    public Criteria andSortIndexIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andSortIndexBetween(int value1, int value2) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " between", value1, value2, "sortIndex");
      return this;
    }

    public Criteria andSortIndexBetween(java.lang.Integer value1, java.lang.Integer value2) {
      addCriterion(IProductUITableColumnDAO.SortIndex + " between", value1, value2, "sortIndex");
      return this;
    }

    public Criteria andSortIndexNotBetween(int value1, int value2) {
      addCriterion(
          IProductUITableColumnDAO.SortIndex + " not between", value1, value2, "sortIndex");
      return this;
    }

    public Criteria andSortIndexNotBetween(java.lang.Integer value1, java.lang.Integer value2) {
      addCriterion(
          IProductUITableColumnDAO.SortIndex + " not between", value1, value2, "sortIndex");
      return this;
    }

    public Criteria andLastModifyUserIsNull() {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " is null");
      return this;
    }

    public Criteria andLastModifyUserIsNotNull() {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " is not null");
      return this;
    }

    public Criteria andLastModifyUserIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.LastModifyUser
              + " is not null AND "
              + IProductUITableColumnDAO.LastModifyUser
              + " <> ''");
      return this;
    }

    public Criteria andLastModifyUserIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.LastModifyUser
              + " is null OR "
              + IProductUITableColumnDAO.LastModifyUser
              + " = '')");
      return this;
    }

    public Criteria andLastModifyUserEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " = ", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " <>", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.LastModifyUser
              + " is null OR "
              + IProductUITableColumnDAO.LastModifyUser
              + " <>",
          value,
          "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " >", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " >=", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " <", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.LastModifyUser + " <=", value, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyUser);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyUserLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.LastModifyUser + " like", buffer.toString(), "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.LastModifyUser + " not like",
          buffer.toString(),
          "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserIn(List<String> values) {

      if (values.size() == 1) {
        return andLastModifyUserEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.LastModifyUser + " in", values, "lastModifyUser");
        return this;
      }
    }

    public Criteria andLastModifyUserNotIn(List<String> values) {
      if (values.size() == 1) {
        return andLastModifyUserNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.LastModifyUser + " not in", values, "lastModifyUser");
        return this;
      }
    }

    public Criteria andLastModifyUserIn(String[] values) {

      if (values.length == 1) {
        return andLastModifyUserEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.LastModifyUser + " in",
            Arrays.asList(values),
            "lastModifyUser");
        return this;
      }
    }

    public Criteria andLastModifyUserNotIn(String[] values) {
      if (values.length == 1) {
        return andLastModifyUserNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.LastModifyUser + " not in",
            Arrays.asList(values),
            "lastModifyUser");
        return this;
      }
    }

    public Criteria andLastModifyUserIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyUser + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyUserBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.LastModifyUser + " between", value1, value2, "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyUserNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.LastModifyUser + " not between",
          value1,
          value2,
          "lastModifyUser");
      return this;
    }

    public Criteria andLastModifyTimeIsNull() {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " is null");
      return this;
    }

    public Criteria andLastModifyTimeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " is not null");
      return this;
    }

    public Criteria andLastModifyTimeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.LastModifyTime
              + " is not null AND "
              + IProductUITableColumnDAO.LastModifyTime
              + " <> ''");
      return this;
    }

    public Criteria andLastModifyTimeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.LastModifyTime
              + " is null OR "
              + IProductUITableColumnDAO.LastModifyTime
              + " = '')");
      return this;
    }

    public Criteria andLastModifyTimeEqualTo(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " = ", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeNotEqualTo(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " <>", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeNotEqualToOrIsNull(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime
              + " is null OR "
              + IProductUITableColumnDAO.LastModifyTime
              + " <>",
          value,
          "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeGreaterThan(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " >", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeGreaterThanOrEqualTo(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " >=", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeLessThan(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " <", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeLessThanOrEqualTo(java.util.Date value) {

      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " <=", value, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.LastModifyTime);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andLastModifyTimeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeIn(List<java.util.Date> values) {

      if (values.size() == 1) {
        return andLastModifyTimeEqualTo(values.get(0));
      } else {
        addCriterionForJDBCDate(
            IProductUITableColumnDAO.LastModifyTime + " in", values, "lastModifyTime");
        return this;
      }
    }

    public Criteria andLastModifyTimeNotIn(List<java.util.Date> values) {
      if (values.size() == 1) {
        return andLastModifyTimeNotEqualTo(values.get(0));
      } else {
        addCriterionForJDBCDate(
            IProductUITableColumnDAO.LastModifyTime + " not in", values, "lastModifyTime");
        return this;
      }
    }

    public Criteria andLastModifyTimeIn(java.util.Date[] values) {

      if (values.length == 1) {
        return andLastModifyTimeEqualTo(values[0]);
      } else {
        addCriterionForJDBCDate(
            IProductUITableColumnDAO.LastModifyTime + " in",
            Arrays.asList(values),
            "lastModifyTime");
        return this;
      }
    }

    public Criteria andLastModifyTimeNotIn(java.util.Date[] values) {
      if (values.length == 1) {
        return andLastModifyTimeNotEqualTo(values[0]);
      } else {
        addCriterionForJDBCDate(
            IProductUITableColumnDAO.LastModifyTime + " not in",
            Arrays.asList(values),
            "lastModifyTime");
        return this;
      }
    }

    public Criteria andLastModifyTimeIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.LastModifyTime + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andLastModifyTimeBetween(java.util.Date value1, java.util.Date value2) {
      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " between", value1, value2, "lastModifyTime");
      return this;
    }

    public Criteria andLastModifyTimeNotBetween(java.util.Date value1, java.util.Date value2) {
      addCriterionForJDBCDate(
          IProductUITableColumnDAO.LastModifyTime + " not between",
          value1,
          value2,
          "lastModifyTime");
      return this;
    }

    public Criteria andRemarksIsNull() {
      addCriterion(IProductUITableColumnDAO.Remarks + " is null");
      return this;
    }

    public Criteria andRemarksIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Remarks + " is not null");
      return this;
    }

    public Criteria andRemarksIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Remarks
              + " is not null AND "
              + IProductUITableColumnDAO.Remarks
              + " <> ''");
      return this;
    }

    public Criteria andRemarksIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Remarks
              + " is null OR "
              + IProductUITableColumnDAO.Remarks
              + " = '')");
      return this;
    }

    public Criteria andRemarksEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " = ", value, "remarks");
      return this;
    }

    public Criteria andRemarksEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " <>", value, "remarks");
      return this;
    }

    public Criteria andRemarksNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Remarks
              + " is null OR "
              + IProductUITableColumnDAO.Remarks
              + " <>",
          value,
          "remarks");
      return this;
    }

    public Criteria andRemarksNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " >", value, "remarks");
      return this;
    }

    public Criteria andRemarksGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " >=", value, "remarks");
      return this;
    }

    public Criteria andRemarksGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " <", value, "remarks");
      return this;
    }

    public Criteria andRemarksLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Remarks + " <=", value, "remarks");
      return this;
    }

    public Criteria andRemarksLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Remarks);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andRemarksLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Remarks + " like", buffer.toString(), "remarks");
      return this;
    }

    public Criteria andRemarksNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Remarks + " not like", buffer.toString(), "remarks");
      return this;
    }

    public Criteria andRemarksIn(List<String> values) {

      if (values.size() == 1) {
        return andRemarksEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Remarks + " in", values, "remarks");
        return this;
      }
    }

    public Criteria andRemarksNotIn(List<String> values) {
      if (values.size() == 1) {
        return andRemarksNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Remarks + " not in", values, "remarks");
        return this;
      }
    }

    public Criteria andRemarksIn(String[] values) {

      if (values.length == 1) {
        return andRemarksEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Remarks + " in", Arrays.asList(values), "remarks");
        return this;
      }
    }

    public Criteria andRemarksNotIn(String[] values) {
      if (values.length == 1) {
        return andRemarksNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.Remarks + " not in", Arrays.asList(values), "remarks");
        return this;
      }
    }

    public Criteria andRemarksIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Remarks + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andRemarksBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Remarks + " between", value1, value2, "remarks");
      return this;
    }

    public Criteria andRemarksNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Remarks + " not between", value1, value2, "remarks");
      return this;
    }

    public Criteria andStatusIsNull() {
      addCriterion(IProductUITableColumnDAO.Status + " is null");
      return this;
    }

    public Criteria andStatusIsNotNull() {
      addCriterion(IProductUITableColumnDAO.Status + " is not null");
      return this;
    }

    public Criteria andStatusIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.Status
              + " is not null AND "
              + IProductUITableColumnDAO.Status
              + " <> ''");
      return this;
    }

    public Criteria andStatusIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.Status
              + " is null OR "
              + IProductUITableColumnDAO.Status
              + " = '')");
      return this;
    }

    public Criteria andStatusEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " = ", value, "status");
      return this;
    }

    public Criteria andStatusEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusEqualTo(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " <>", value, "status");
      return this;
    }

    public Criteria andStatusNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.Status
              + " is null OR "
              + IProductUITableColumnDAO.Status
              + " <>",
          value,
          "status");
      return this;
    }

    public Criteria andStatusNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " >", value, "status");
      return this;
    }

    public Criteria andStatusGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " >=", value, "status");
      return this;
    }

    public Criteria andStatusGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " <", value, "status");
      return this;
    }

    public Criteria andStatusLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusLessThan(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.Status + " <=", value, "status");
      return this;
    }

    public Criteria andStatusLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.Status);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andStatusLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Status + " like", buffer.toString(), "status");
      return this;
    }

    public Criteria andStatusNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(IProductUITableColumnDAO.Status + " not like", buffer.toString(), "status");
      return this;
    }

    public Criteria andStatusIn(List<String> values) {

      if (values.size() == 1) {
        return andStatusEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Status + " in", values, "status");
        return this;
      }
    }

    public Criteria andStatusNotIn(List<String> values) {
      if (values.size() == 1) {
        return andStatusNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.Status + " not in", values, "status");
        return this;
      }
    }

    public Criteria andStatusIn(String[] values) {

      if (values.length == 1) {
        return andStatusEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Status + " in", Arrays.asList(values), "status");
        return this;
      }
    }

    public Criteria andStatusNotIn(String[] values) {
      if (values.length == 1) {
        return andStatusNotEqualTo(values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.Status + " not in", Arrays.asList(values), "status");
        return this;
      }
    }

    public Criteria andStatusIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusNotIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.Status + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andStatusBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Status + " between", value1, value2, "status");
      return this;
    }

    public Criteria andStatusNotBetween(String value1, String value2) {
      addCriterion(IProductUITableColumnDAO.Status + " not between", value1, value2, "status");
      return this;
    }

    public Criteria andModelPropertyIdIsNull() {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " is null");
      return this;
    }

    public Criteria andModelPropertyIdIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " is not null");
      return this;
    }

    public Criteria andModelPropertyIdIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId
              + " is not null AND "
              + IProductUITableColumnDAO.ModelPropertyId
              + " <> ''");
      return this;
    }

    public Criteria andModelPropertyIdIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ModelPropertyId
              + " is null OR "
              + IProductUITableColumnDAO.ModelPropertyId
              + " = '')");
      return this;
    }

    public Criteria andModelPropertyIdEqualTo(long value) {
      return andModelPropertyIdEqualTo(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " = ", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdNotEqualTo(long value) {
      return andModelPropertyIdNotEqualTo(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdNotEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " <>", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdNotEqualToOrIsNull(long value) {
      return andModelPropertyIdNotEqualToOrIsNull(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdNotEqualToOrIsNull(java.lang.Long value) {

      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId
              + " is null OR "
              + IProductUITableColumnDAO.ModelPropertyId
              + " <>",
          value,
          "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdGreaterThan(long value) {
      return andModelPropertyIdGreaterThan(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdGreaterThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " >", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdGreaterThanOrEqualTo(long value) {
      return andModelPropertyIdGreaterThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdGreaterThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " >=", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdLessThan(long value) {
      return andModelPropertyIdLessThan(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdLessThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " <", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdLessThanOrEqualTo(long value) {
      return andModelPropertyIdLessThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andModelPropertyIdLessThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " <=", value, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ModelPropertyId);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andModelPropertyIdLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdIn(long[] values) {
      if (values.length == 1) {
        return andModelPropertyIdEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.ModelPropertyId + " in", values, "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdNotIn(long[] values) {
      if (values.length == 1) {
        return andModelPropertyIdNotEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ModelPropertyId + " not in", values, "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdIn(List<java.lang.Long> values) {

      if (values.size() == 1) {
        return andModelPropertyIdEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ModelPropertyId + " in", values, "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdNotIn(List<java.lang.Long> values) {
      if (values.size() == 1) {
        return andModelPropertyIdNotEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ModelPropertyId + " not in", values, "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdIn(java.lang.Long[] values) {

      if (values.length == 1) {
        return andModelPropertyIdEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ModelPropertyId + " in",
            Arrays.asList(values),
            "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdNotIn(java.lang.Long[] values) {
      if (values.length == 1) {
        return andModelPropertyIdNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ModelPropertyId + " not in",
            Arrays.asList(values),
            "modelPropertyId");
        return this;
      }
    }

    public Criteria andModelPropertyIdIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ModelPropertyId + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andModelPropertyIdBetween(long value1, long value2) {
      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId + " between", value1, value2, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId + " between", value1, value2, "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdNotBetween(long value1, long value2) {
      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId + " not between",
          value1,
          value2,
          "modelPropertyId");
      return this;
    }

    public Criteria andModelPropertyIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(
          IProductUITableColumnDAO.ModelPropertyId + " not between",
          value1,
          value2,
          "modelPropertyId");
      return this;
    }

    public Criteria andActionGroupIdIsNull() {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " is null");
      return this;
    }

    public Criteria andActionGroupIdIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " is not null");
      return this;
    }

    public Criteria andActionGroupIdIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupId
              + " is not null AND "
              + IProductUITableColumnDAO.ActionGroupId
              + " <> ''");
      return this;
    }

    public Criteria andActionGroupIdIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ActionGroupId
              + " is null OR "
              + IProductUITableColumnDAO.ActionGroupId
              + " = '')");
      return this;
    }

    public Criteria andActionGroupIdEqualTo(long value) {
      return andActionGroupIdEqualTo(Long.valueOf(value));
    }

    public Criteria andActionGroupIdEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " = ", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdNotEqualTo(long value) {
      return andActionGroupIdNotEqualTo(Long.valueOf(value));
    }

    public Criteria andActionGroupIdNotEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " <>", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdNotEqualToOrIsNull(long value) {
      return andActionGroupIdNotEqualToOrIsNull(Long.valueOf(value));
    }

    public Criteria andActionGroupIdNotEqualToOrIsNull(java.lang.Long value) {

      addCriterion(
          IProductUITableColumnDAO.ActionGroupId
              + " is null OR "
              + IProductUITableColumnDAO.ActionGroupId
              + " <>",
          value,
          "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdGreaterThan(long value) {
      return andActionGroupIdGreaterThan(Long.valueOf(value));
    }

    public Criteria andActionGroupIdGreaterThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " >", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdGreaterThanOrEqualTo(long value) {
      return andActionGroupIdGreaterThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andActionGroupIdGreaterThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " >=", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdLessThan(long value) {
      return andActionGroupIdLessThan(Long.valueOf(value));
    }

    public Criteria andActionGroupIdLessThan(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " <", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdLessThanOrEqualTo(long value) {
      return andActionGroupIdLessThanOrEqualTo(Long.valueOf(value));
    }

    public Criteria andActionGroupIdLessThanOrEqualTo(java.lang.Long value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupId + " <=", value, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupId);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupIdLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdIn(long[] values) {
      if (values.length == 1) {
        return andActionGroupIdEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.ActionGroupId + " in", values, "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdNotIn(long[] values) {
      if (values.length == 1) {
        return andActionGroupIdNotEqualTo((java.lang.Long) values[0]);
      } else {
        addCriterion(IProductUITableColumnDAO.ActionGroupId + " not in", values, "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdIn(List<java.lang.Long> values) {

      if (values.size() == 1) {
        return andActionGroupIdEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ActionGroupId + " in", values, "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdNotIn(List<java.lang.Long> values) {
      if (values.size() == 1) {
        return andActionGroupIdNotEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ActionGroupId + " not in", values, "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdIn(java.lang.Long[] values) {

      if (values.length == 1) {
        return andActionGroupIdEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ActionGroupId + " in", Arrays.asList(values), "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdNotIn(java.lang.Long[] values) {
      if (values.length == 1) {
        return andActionGroupIdNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ActionGroupId + " not in",
            Arrays.asList(values),
            "actionGroupId");
        return this;
      }
    }

    public Criteria andActionGroupIdIn(BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupId + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupIdBetween(long value1, long value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupId + " between", value1, value2, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupId + " between", value1, value2, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdNotBetween(long value1, long value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupId + " not between", value1, value2, "actionGroupId");
      return this;
    }

    public Criteria andActionGroupIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupId + " not between", value1, value2, "actionGroupId");
      return this;
    }

    public Criteria andListDataSourceCodeIsNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " is null");
      return this;
    }

    public Criteria andListDataSourceCodeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " is not null");
      return this;
    }

    public Criteria andListDataSourceCodeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode
              + " is not null AND "
              + IProductUITableColumnDAO.ListDataSourceCode
              + " <> ''");
      return this;
    }

    public Criteria andListDataSourceCodeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ListDataSourceCode
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSourceCode
              + " = '')");
      return this;
    }

    public Criteria andListDataSourceCodeEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " = ", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeNotEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " <>", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSourceCode
              + " <>",
          value,
          "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " >", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThanOrEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " >=", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " <", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeLessThanOrEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " <=", value, "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceCode);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceCodeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " like",
          buffer.toString(),
          "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " not like",
          buffer.toString(),
          "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeIn(List<String> values) {

      if (values.size() == 1) {
        return andListDataSourceCodeEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceCode + " in", values, "listDataSourceCode");
        return this;
      }
    }

    public Criteria andListDataSourceCodeNotIn(List<String> values) {
      if (values.size() == 1) {
        return andListDataSourceCodeNotEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceCode + " not in", values, "listDataSourceCode");
        return this;
      }
    }

    public Criteria andListDataSourceCodeIn(String[] values) {

      if (values.length == 1) {
        return andListDataSourceCodeEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceCode + " in",
            Arrays.asList(values),
            "listDataSourceCode");
        return this;
      }
    }

    public Criteria andListDataSourceCodeNotIn(String[] values) {
      if (values.length == 1) {
        return andListDataSourceCodeNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceCode + " not in",
            Arrays.asList(values),
            "listDataSourceCode");
        return this;
      }
    }

    public Criteria andListDataSourceCodeIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceCode + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceCodeBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " between",
          value1,
          value2,
          "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceCodeNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceCode + " not between",
          value1,
          value2,
          "listDataSourceCode");
      return this;
    }

    public Criteria andListDataSourceNameIsNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " is null");
      return this;
    }

    public Criteria andListDataSourceNameIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " is not null");
      return this;
    }

    public Criteria andListDataSourceNameIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName
              + " is not null AND "
              + IProductUITableColumnDAO.ListDataSourceName
              + " <> ''");
      return this;
    }

    public Criteria andListDataSourceNameIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ListDataSourceName
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSourceName
              + " = '')");
      return this;
    }

    public Criteria andListDataSourceNameEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " = ", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameNotEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " <>", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName
              + " is null OR "
              + IProductUITableColumnDAO.ListDataSourceName
              + " <>",
          value,
          "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " >", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameGreaterThanOrEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " >=", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " <", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameLessThanOrEqualTo(String value) {

      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " <=", value, "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ListDataSourceName);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andListDataSourceNameLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " like",
          buffer.toString(),
          "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " not like",
          buffer.toString(),
          "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameIn(List<String> values) {

      if (values.size() == 1) {
        return andListDataSourceNameEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceName + " in", values, "listDataSourceName");
        return this;
      }
    }

    public Criteria andListDataSourceNameNotIn(List<String> values) {
      if (values.size() == 1) {
        return andListDataSourceNameNotEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceName + " not in", values, "listDataSourceName");
        return this;
      }
    }

    public Criteria andListDataSourceNameIn(String[] values) {

      if (values.length == 1) {
        return andListDataSourceNameEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceName + " in",
            Arrays.asList(values),
            "listDataSourceName");
        return this;
      }
    }

    public Criteria andListDataSourceNameNotIn(String[] values) {
      if (values.length == 1) {
        return andListDataSourceNameNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ListDataSourceName + " not in",
            Arrays.asList(values),
            "listDataSourceName");
        return this;
      }
    }

    public Criteria andListDataSourceNameIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ListDataSourceName + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andListDataSourceNameBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " between",
          value1,
          value2,
          "listDataSourceName");
      return this;
    }

    public Criteria andListDataSourceNameNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ListDataSourceName + " not between",
          value1,
          value2,
          "listDataSourceName");
      return this;
    }

    public Criteria andActionGroupCodeIsNull() {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " is null");
      return this;
    }

    public Criteria andActionGroupCodeIsNotNull() {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " is not null");
      return this;
    }

    public Criteria andActionGroupCodeIsNotEmpty() {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode
              + " is not null AND "
              + IProductUITableColumnDAO.ActionGroupCode
              + " <> ''");
      return this;
    }

    public Criteria andActionGroupCodeIsEmpty() {
      addCriterion(
          "("
              + IProductUITableColumnDAO.ActionGroupCode
              + " is null OR "
              + IProductUITableColumnDAO.ActionGroupCode
              + " = '')");
      return this;
    }

    public Criteria andActionGroupCodeEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " = ", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" = ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " = ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeNotEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " <>", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeNotEqualToOrIsNull(String value) {

      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode
              + " is null OR "
              + IProductUITableColumnDAO.ActionGroupCode
              + " <>",
          value,
          "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeNotEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" <> ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeNotEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " <> ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeGreaterThan(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " >", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeGreaterThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" > ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeGreaterThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " > ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeGreaterThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " >=", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeGreaterThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" >= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeGreaterThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " >= ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeLessThan(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " <", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeLessThanForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" < ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeLessThan(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " < ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeLessThanOrEqualTo(String value) {

      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " <=", value, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeLessThanOrEqualToForeignKey(java.lang.String key) {
      StringBuffer str = new StringBuffer(IProductUITableColumnDAO.ActionGroupCode);
      str.append(" <= ").append(key);
      addForeignKeyCriterion(str.toString());
      return this;
    }

    public Criteria andActionGroupCodeLessThanOrEqualTo(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " <= ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode + " like", buffer.toString(), "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeNotLike(String value) {
      StringBuffer buffer = new StringBuffer("%");
      buffer.append(value);
      buffer.append("%");
      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode + " not like",
          buffer.toString(),
          "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeIn(List<String> values) {

      if (values.size() == 1) {
        return andActionGroupCodeEqualTo(values.get(0));
      } else {
        addCriterion(IProductUITableColumnDAO.ActionGroupCode + " in", values, "actionGroupCode");
        return this;
      }
    }

    public Criteria andActionGroupCodeNotIn(List<String> values) {
      if (values.size() == 1) {
        return andActionGroupCodeNotEqualTo(values.get(0));
      } else {
        addCriterion(
            IProductUITableColumnDAO.ActionGroupCode + " not in", values, "actionGroupCode");
        return this;
      }
    }

    public Criteria andActionGroupCodeIn(String[] values) {

      if (values.length == 1) {
        return andActionGroupCodeEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ActionGroupCode + " in",
            Arrays.asList(values),
            "actionGroupCode");
        return this;
      }
    }

    public Criteria andActionGroupCodeNotIn(String[] values) {
      if (values.length == 1) {
        return andActionGroupCodeNotEqualTo(values[0]);
      } else {
        addCriterion(
            IProductUITableColumnDAO.ActionGroupCode + " not in",
            Arrays.asList(values),
            "actionGroupCode");
        return this;
      }
    }

    public Criteria andActionGroupCodeIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " in ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeNotIn(
        BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
      addCriterion(IProductUITableColumnDAO.ActionGroupCode + " not in ", subQueryBean, dao);
      return this;
    }

    public Criteria andActionGroupCodeBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode + " between", value1, value2, "actionGroupCode");
      return this;
    }

    public Criteria andActionGroupCodeNotBetween(String value1, String value2) {
      addCriterion(
          IProductUITableColumnDAO.ActionGroupCode + " not between",
          value1,
          value2,
          "actionGroupCode");
      return this;
    }
  }
}
